
'''
封装：保证数据的安全 -->私有化   属性和函数只能被自己调用 不会被外部调用
    属性封装:在定义属性的时候使用__定义 只能在类内部调用或者修改 外部需要通过共有函数来间接的操作
    函数封装:在定义函数的时候使用__函数定义 只能在类内部调用或者修改
            外部

继承：
    子类可以继承父类 父类所有的共有属性和函数都会被子类继承

'''

class Orders():

    def __init__(self,oid,price):
        self.__oid = oid
        self.__price = price

    def getOid(self):
        return self.__oid

    def getPrice(self):
        return self.__price


    def setPrice(self,price):
        self.__price = price

    def __test(self):
        print("测试一下0")


    def callTest(self):
        self.__test()

class Father():
        father = "父类"
        def __init__(self,name,age):
            self.fatherName = name
            self.fatherAge = age
        def work(self):
            print("努力工作 给儿子娶媳妇攒钱")

        def __kanbing(self):
            print("去医院")



class Son(Father):
    son = "儿子"
    def __init__(self,name,age,fatherName,fatherAge):
        self.name = name
        self.age = age
        super().__init__(fatherName,fatherAge)


if __name__ == '__main__':
    order = Orders(1,100)
    # print(order.__price)     # 拿不到 私有化 保证安全性
    print(order.getPrice())
    order.callTest()

    son = Son("好大儿",23,"老父亲",50)
    print(son.father)
    print(son.son)
    print(son.name)
    print(son.age)
    print(son.fatherName)
    print(son.fatherAge)
    son.work()








